@CI
2年前 提问
1个回答

软件安全接触点主要包括哪些方面

帅末
2年前

软件安全接触点主要包括以下方面:

  • 滥用用例设计:滥用用例也称为误用用例,通过设计滥用用例可以更准确地描述系统在受到攻击时的行为表现:应该保护什么、免受谁的攻击,以及保护多长时间。

  • 安全需求分析:在安全开发的需求分析阶段应当充分考虑安全方面的需求,一般,安全需求包括功能需求和异常处理需求。功能安全需求如数据加密、隐私保护和访问控制等,而异常处理安全需求包括软件异常处理、恶意攻击处理等。

  • 风险分析:体系结构设计中应进行风险分析,确定可能的攻击,并提供一致的安全防护措施。安全分析人员应通过风险分析揭示体系结构存在的风险和瑕疵,对它们评级,并开始进行降低风险的活动。

  • 代码审核:在代码审核中,关注的焦点是实现缺陷,如在代码中发现缓冲区溢出。代码审核可以使用商业或免费工具。然而,即使是最好的代码审核也只能发现大约50%的安全问题,而体系结构瑕疵则是真正棘手的问题。实现软件安全的完整方法是代码审核和体系结构分析的有机组合。

  • 基于风险的安全测试:功能测试能够告诉软件开发人员是否实现了其功能设计,安全测试会告诉软件开发人员该功能设计能否正确而安全地实现。安全测试必须包含两种策略。

  • 渗透测试:渗透测试可以评估真实运行环境中软件的安全性,结合体系结构风险分析来设计渗透测试效果会更好。因为,像攻击者一样考虑问题,并且来指导安全测试是极为重要的。

  • 安全操作:要求软件公司不同部门、不同职位人员之间进行密切合作和协同一致的工作,在实践中可以在应用上述接触点时互相配合工作。